package com.coocaa.ops.api.v1.content.biz;

import com.coocaa.ops.api.v1.content.model.internal.PanelContentInfo;
import com.coocaa.ops.api.v1.content.model.internal.PanelSimpleInfo;
import com.coocaa.ops.api.v1.content.model.internal.PanelSimpleInfoWithDmp;
import com.coocaa.ops.common.core.biz.panel.entity.BlockContentConfigInfo;

import java.util.List;

/**
 * @author tangminghong
 * @date 2020-06-28
 */
public interface IPanelInfoBiz {

    /**
     * 获取版面关联的所有版块（无dmp）
     * @param tabId
     * @param policyCategory
     * @return
     */
    List<PanelSimpleInfo> getAllPanels(Integer tabId, Integer policyCategory);

    /**
     * 获取版面关联的所有dmp版块
     * @param tabId
     * @param policyCategory
     * @return
     */
    List<PanelSimpleInfoWithDmp> getAllDmpPanels(Integer tabId, Integer policyCategory);

    /**
     * 获取版块内容（无dmp推荐位）
     * @param panelId
     * @param panelVersion
     * @return
     */
    PanelContentInfo getPanelContent(Integer panelId, Integer panelVersion);

    /**
     * 获取分组版块第一个分组内容（无dmp）
     * @param panelId
     * @param panelVersion
     * @return
     */
    PanelContentInfo getGroupPanelFirstContent(Integer panelId, Integer panelVersion);

    /**
     * 获取版块所有dmp推荐位
     * @param panelId
     * @param panelVersion
     * @param groupPanel
     * @return
     */
    List<BlockContentConfigInfo> getAllDmpBlocks(Integer panelId, Integer panelVersion, boolean groupPanel);

}
